{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Monte Carlo Analysis\n",
    "This notebook demonstrates a Monte Carlo analysis of the performance of the solvers ALGAMES and iLQGames."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "using ALGAMES\n",
    "using BenchmarkTools\n",
    "using LinearAlgebra\n",
    "using StaticArrays\n",
    "using TrajectoryOptimization\n",
    "const TO = TrajectoryOptimization;"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define the dynamics model of the game."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "struct InertialUnicycleGame{T} <: AbstractGameModel\n",
    "    n::Int  # Number of states\n",
    "    m::Int  # Number of controls\n",
    "    mp::T\n",
    "    pu::Vector{Vector{Int}} # Indices of the each player's controls\n",
    "    px::Vector{Vector{Int}} # Indices of the each player's x and y positions\n",
    "    p::Int  # Number of players\n",
    "end\n",
    "InertialUnicycleGame() = InertialUnicycleGame(\n",
    "    12,\n",
    "    6,\n",
    "    1.0,\n",
    "    [[1,2],[3,4],[5,6]],\n",
    "    [[1,2],[5,6],[9,10]],\n",
    "    3)\n",
    "Base.size(::InertialUnicycleGame) = 12,6,[[1,2],[3,4],[5,6]],3 # n,m,pu,p"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Instantiate dynamics model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "model = InertialUnicycleGame()\n",
    "n,m,pu,p = size(model)\n",
    "T = Float64\n",
    "px = model.px\n",
    "\n",
    "# We use the unicycle dynamics for each player. \n",
    "# State   x = [px1, py1, θ1, v1, px2, py2, θ2, v2, px3, py3, θ3, v3] \n",
    "# Control u = [θ1, v1, θ2, v2, θ3, v3]\n",
    "# px1 = x position of player 1 \n",
    "# py1 = y position of player 1 \n",
    "# θ1 = orientation of player 1 \n",
    "# v1 = x velocity of player 1 \n",
    "\n",
    "function TO.dynamics(model::InertialUnicycleGame, x, u) # Non memory allocating dynamics\n",
    "    qd1 = @SVector [cos(x[3]), sin(x[3])]\n",
    "    qd1 *= x[4]\n",
    "    qd2 = @SVector [cos(x[7]), sin(x[7])]\n",
    "    qd2 *= x[8]\n",
    "    qd3 = @SVector [cos(x[11]), sin(x[11])]\n",
    "    qd3 *= x[12]\n",
    "    qdd1 = u[ @SVector [1,2] ]\n",
    "    qdd2 = u[ @SVector [3,4] ]\n",
    "    qdd3 = u[ @SVector [5,6] ]\n",
    "    return [qd1; qdd1; qd2; qdd2; qd3; qdd3]\n",
    "end;"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Discretization of the trajectories"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "tf = 3.0  # final time\n",
    "N = 21    # number of knot points\n",
    "dt = tf / (N-1); # time step duration"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Initial and final state definition"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Define initial and final states (be sure to use Static Vectors!)\n",
    "x0 = @SVector  [\n",
    "               -0.80, -0.05,  0.00, 0.90, #player 1 x,y,θ,v\n",
    "               -1.00, -0.05,  0.00, 0.90, #player 2 x,y,θ,v\n",
    "               -0.90, -0.30, pi/12, 0.95, #player 3 x,y,θ,v\n",
    "                ]\n",
    "xf = @SVector [\n",
    "                1.10, -0.05,  0.00, 0.90, #player 1 x,y,θ,v\n",
    "                0.70, -0.05,  0.00, 0.90, #player 2 x,y,θ,v\n",
    "                0.90, -0.05,  0.00, 0.90, #player 3 x,y,θ,v\n",
    "               ];"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define players objective functions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Define quadratic costs\n",
    "diag_Q1 = @SVector [ # Player 1 state cost\n",
    "    0., 10., 1., 1.,\n",
    "    0., 0., 0., 0.,\n",
    "    0., 0., 0., 0.]\n",
    "diag_Q2 = @SVector [ # Player 2 state cost\n",
    "    0., 0., 0., 0.,\n",
    "    0., 10., 1., 1.,\n",
    "    0., 0., 0., 0.]\n",
    "diag_Q3 = @SVector [ # Player 3 state cost\n",
    "    0., 0., 0., 0.,\n",
    "    0., 0., 0., 0.,\n",
    "    0., 10., 1., 1.]\n",
    "\n",
    "# Players stage state costs\n",
    "Q = [0.1*Diagonal(diag_Q1), \n",
    "     0.1*Diagonal(diag_Q2),\n",
    "     0.1*Diagonal(diag_Q3)]\n",
    "\n",
    "# Players final state costs\n",
    "Qf = [1.0*Diagonal(diag_Q1),\n",
    "      1.0*Diagonal(diag_Q2),\n",
    "      1.0*Diagonal(diag_Q3)]\n",
    "\n",
    "# Players controls costs\n",
    "R = [0.1*Diagonal(@SVector ones(length(pu[1]))),\n",
    "     0.1*Diagonal(@SVector ones(length(pu[2]))),\n",
    "     0.1*Diagonal(@SVector ones(length(pu[3]))),\n",
    "    ]\n",
    "\n",
    "# Players objectives\n",
    "obj = [LQRObjective(Q[i],R[i],Qf[i],xf,N) for i=1:p];"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define the initial trajectory"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "xs = SVector{n}(zeros(n))\n",
    "us = SVector{m}(zeros(m))\n",
    "Z = [KnotPoint(xs,us,dt) for k = 1:N]\n",
    "Z[end] = KnotPoint(xs,m);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Build the ramp merging scenario"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "ename": "UndefVarError",
     "evalue": "UndefVarError: car_radii not defined",
     "output_type": "error",
     "traceback": [
      "UndefVarError: car_radii not defined",
      "",
      "Stacktrace:",
      " [1] top-level scope at In[9]:11"
     ]
    }
   ],
   "source": [
    "# Actors \n",
    "actor_radius = 0.08\n",
    "actors_radii = [actor_radius for i=1:p]\n",
    "actors_types = [:car, :car, :car]\n",
    "\n",
    "#Scene\n",
    "road_length = 2.20\n",
    "road_width = 0.34\n",
    "ramp_length = 1.2\n",
    "ramp_angle = pi/12\n",
    "\n",
    "# Build scenario\n",
    "scenario = MergingScenario(\n",
    "        road_length, road_width, ramp_length, \n",
    "        ramp_angle, car_radii, actors_types);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define constraints of the problem"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "ename": "UndefVarError",
     "evalue": "UndefVarError: scenario not defined",
     "output_type": "error",
     "traceback": [
      "UndefVarError: scenario not defined",
      "",
      "Stacktrace:",
      " [1] top-level scope at In[10]:9"
     ]
    }
   ],
   "source": [
    "# Create constraint sets\n",
    "algames_conSet = ConstraintSet(n,m,N)\n",
    "ilqgames_conSet = ConstraintSet(n,m,N)\n",
    "con_inds = 2:N # Indices where the constraints will be applied\n",
    "\n",
    "# Add collision avoidance constraints\n",
    "add_collision_avoidance(algames_conSet, actors_radii, px, p, con_inds)\n",
    "add_collision_avoidance(ilqgames_conSet, actors_radii, px, p, con_inds)\n",
    "\n",
    "# Add scenario specific constraints (road boundaries)\n",
    "add_scenario_constraints(algames_conSet, scenario, px, con_inds; constraint_type=:constraint)\n",
    "add_scenario_constraints(ilqgames_conSet, scenario, px, con_inds; constraint_type=:constraint);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Define the problem we will be solving"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "algames_prob = GameProblem(model, obj, algames_conSet, x0, xf, Z, N, tf)\n",
    "ilqgames_prob = GameProblem(model, obj, ilqgames_conSet, x0, xf, Z, N, tf);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Build ALGAMES  and iLQGames solvers"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [],
   "source": [
    "algames_opts = DirectGamesSolverOptions{T}(\n",
    "    iterations=10,\n",
    "    inner_iterations=20,\n",
    "    iterations_linesearch=10,\n",
    "    log_level=ALGAMES.Logging.Warn)\n",
    "algames_solver = DirectGamesSolver(algames_prob, algames_opts)\n",
    "\n",
    "ilqgames_opts = PenaltyiLQGamesSolverOptions{T}(\n",
    "    iterations=200,\n",
    "    gradient_norm_tolerance=1e-2,\n",
    "    cost_tolerance=1e-4,\n",
    "    iterations_linesearch=5,\n",
    "    line_search_lower_bound=0.0,\n",
    "    line_search_upper_bound=0.02,\n",
    "    log_level=ALGAMES.Logging.Warn)\n",
    "ilqgames_solver = PenaltyiLQGamesSolver(ilqgames_prob, ilqgames_opts)\n",
    "pen = ones(length(ilqgames_solver.constraints))*100.0\n",
    "set_penalty!(ilqgames_solver, pen)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Solve the nominal problems "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  0.010583 seconds (5.28 k allocations: 4.759 MiB)\n"
     ]
    }
   ],
   "source": [
    "@time solve!(algames_solver);"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "  0.066582 seconds (193.24 k allocations: 55.331 MiB, 46.26% gc time)\n"
     ]
    }
   ],
   "source": [
    "@time solve!(ilqgames_solver);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Build the Monte Carlo Sampler for each solver\n",
    "We can change the number of samples (here we've chosen 200) to reduce the compute time. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Define a noise that will be added to the initial state of the system x0. \n",
    "# By sampling x0 randomly we generate a class of similar dynamic games. \n",
    "# In this case, we add noise to the initial speeds, positions and orientations of the vehicles.\n",
    "state_noise = @SVector [ # Uniform noise around x0\n",
    "    0.06, 0.06, 2*pi/72, 0.05,\n",
    "    0.06, 0.06, 2*pi/72, 0.05,\n",
    "    0.06, 0.06, 2*pi/72, 0.05]\n",
    "opts_monte_carlo = MonteCarloSamplerOptions{n,T}(\n",
    "    noise=state_noise, # noise added to the initial state \n",
    "    iterations=200) # number of Monte Carlo samples \n",
    "\n",
    "algames_sampler = MonteCarloSampler(algames_solver, opts_monte_carlo)\n",
    "ilqgames_sampler = MonteCarloSampler(ilqgames_solver, opts_monte_carlo);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Sample and store the results for the Monte Carlo analysis."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "monte_carlo_sampling(algames_sampler)\n",
    "monte_carlo_sampling(ilqgames_sampler)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Plot the histograms compiling the results for ALGAMES"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n",
       "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"600\" height=\"400\" viewBox=\"0 0 2400 1600\">\n",
       "<defs>\n",
       "  <clipPath id=\"clip9000\">\n",
       "    <rect x=\"0\" y=\"0\" width=\"2400\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip9000)\" d=\"\n",
       "M0 1600 L2400 1600 L2400 0 L0 0  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip9001\">\n",
       "    <rect x=\"480\" y=\"0\" width=\"1681\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip9000)\" d=\"\n",
       "M229.135 1425.62 L2352.76 1425.62 L2352.76 121.675 L229.135 121.675  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip9002\">\n",
       "    <rect x=\"229\" y=\"121\" width=\"2125\" height=\"1305\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  345.938,1425.62 345.938,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  901.825,1425.62 901.825,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1457.71,1425.62 1457.71,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  2013.6,1425.62 2013.6,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  229.135,1388.71 2352.76,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  229.135,967.435 2352.76,967.435 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  229.135,546.156 2352.76,546.156 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  229.135,124.877 2352.76,124.877 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,1425.62 2352.76,1425.62 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,1425.62 229.135,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  345.938,1425.62 345.938,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  901.825,1425.62 901.825,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1457.71,1425.62 1457.71,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2013.6,1425.62 2013.6,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,1388.71 254.619,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,967.435 254.619,967.435 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,546.156 254.619,546.156 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,124.877 254.619,124.877 \n",
       "  \"/>\n",
       "<g clip-path=\"url(#clip9000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 345.938, 1479.62)\" x=\"345.938\" y=\"1479.62\">0.0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 901.825, 1479.62)\" x=\"901.825\" y=\"1479.62\">0.1</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1457.71, 1479.62)\" x=\"1457.71\" y=\"1479.62\">0.2</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 2013.6, 1479.62)\" x=\"2013.6\" y=\"1479.62\">0.3</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 205.135, 1406.21)\" x=\"205.135\" y=\"1406.21\">0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 205.135, 984.935)\" x=\"205.135\" y=\"984.935\">50</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 205.135, 563.656)\" x=\"205.135\" y=\"563.656\">100</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 205.135, 142.377)\" x=\"205.135\" y=\"142.377\">150</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:84px; text-anchor:middle;\" transform=\"rotate(0, 1290.95, 73.2)\" x=\"1290.95\" y=\"73.2\">Solve Time</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(0, 1290.95, 1559.48)\" x=\"1290.95\" y=\"1559.48\">Solve Time in s</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(-90, 89.2861, 773.647)\" x=\"89.2861\" y=\"773.647\">Occurences</text>\n",
       "</g>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M345.938 158.579 L345.938 1388.71 L401.527 1388.71 L401.527 158.579 L345.938 158.579 L345.938 158.579  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  345.938,158.579 345.938,1388.71 401.527,1388.71 401.527,158.579 345.938,158.579 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M401.527 1085.39 L401.527 1388.71 L457.116 1388.71 L457.116 1085.39 L401.527 1085.39 L401.527 1085.39  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  401.527,1085.39 401.527,1388.71 457.116,1388.71 457.116,1085.39 401.527,1085.39 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M457.116 1388.71 L457.116 1388.71 L512.704 1388.71 L512.704 1388.71 L457.116 1388.71 L457.116 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  457.116,1388.71 457.116,1388.71 512.704,1388.71 457.116,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M512.704 1371.86 L512.704 1388.71 L568.293 1388.71 L568.293 1371.86 L512.704 1371.86 L512.704 1371.86  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  512.704,1371.86 512.704,1388.71 568.293,1388.71 568.293,1371.86 512.704,1371.86 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M568.293 1388.71 L568.293 1388.71 L623.882 1388.71 L623.882 1388.71 L568.293 1388.71 L568.293 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  568.293,1388.71 568.293,1388.71 623.882,1388.71 568.293,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M623.882 1388.71 L623.882 1388.71 L679.47 1388.71 L679.47 1388.71 L623.882 1388.71 L623.882 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  623.882,1388.71 623.882,1388.71 679.47,1388.71 623.882,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M679.47 1380.29 L679.47 1388.71 L735.059 1388.71 L735.059 1380.29 L679.47 1380.29 L679.47 1380.29  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  679.47,1380.29 679.47,1388.71 735.059,1388.71 735.059,1380.29 679.47,1380.29 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M735.059 1371.86 L735.059 1388.71 L790.648 1388.71 L790.648 1371.86 L735.059 1371.86 L735.059 1371.86  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  735.059,1371.86 735.059,1388.71 790.648,1388.71 790.648,1371.86 735.059,1371.86 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M790.648 1380.29 L790.648 1388.71 L846.236 1388.71 L846.236 1380.29 L790.648 1380.29 L790.648 1380.29  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  790.648,1380.29 790.648,1388.71 846.236,1388.71 846.236,1380.29 790.648,1380.29 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M846.236 1371.86 L846.236 1388.71 L901.825 1388.71 L901.825 1371.86 L846.236 1371.86 L846.236 1371.86  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  846.236,1371.86 846.236,1388.71 901.825,1388.71 901.825,1371.86 846.236,1371.86 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M901.825 1388.71 L901.825 1388.71 L957.414 1388.71 L957.414 1388.71 L901.825 1388.71 L901.825 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  901.825,1388.71 901.825,1388.71 957.414,1388.71 901.825,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M957.414 1380.29 L957.414 1388.71 L1013 1388.71 L1013 1380.29 L957.414 1380.29 L957.414 1380.29  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  957.414,1380.29 957.414,1388.71 1013,1388.71 1013,1380.29 957.414,1380.29 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1013 1363.44 L1013 1388.71 L1068.59 1388.71 L1068.59 1363.44 L1013 1363.44 L1013 1363.44  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1013,1363.44 1013,1388.71 1068.59,1388.71 1068.59,1363.44 1013,1363.44 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1068.59 1388.71 L1068.59 1388.71 L1124.18 1388.71 L1124.18 1388.71 L1068.59 1388.71 L1068.59 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1068.59,1388.71 1068.59,1388.71 1124.18,1388.71 1068.59,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1124.18 1380.29 L1124.18 1388.71 L1179.77 1388.71 L1179.77 1380.29 L1124.18 1380.29 L1124.18 1380.29  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1124.18,1380.29 1124.18,1388.71 1179.77,1388.71 1179.77,1380.29 1124.18,1380.29 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1179.77 1380.29 L1179.77 1388.71 L1235.36 1388.71 L1235.36 1380.29 L1179.77 1380.29 L1179.77 1380.29  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1179.77,1380.29 1179.77,1388.71 1235.36,1388.71 1235.36,1380.29 1179.77,1380.29 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1235.36 1388.71 L1235.36 1388.71 L1290.95 1388.71 L1290.95 1388.71 L1235.36 1388.71 L1235.36 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1235.36,1388.71 1235.36,1388.71 1290.95,1388.71 1235.36,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1290.95 1388.71 L1290.95 1388.71 L1346.53 1388.71 L1346.53 1388.71 L1290.95 1388.71 L1290.95 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1290.95,1388.71 1290.95,1388.71 1346.53,1388.71 1290.95,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1346.53 1388.71 L1346.53 1388.71 L1402.12 1388.71 L1402.12 1388.71 L1346.53 1388.71 L1346.53 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1346.53,1388.71 1346.53,1388.71 1402.12,1388.71 1346.53,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1402.12 1380.29 L1402.12 1388.71 L1457.71 1388.71 L1457.71 1380.29 L1402.12 1380.29 L1402.12 1380.29  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1402.12,1380.29 1402.12,1388.71 1457.71,1388.71 1457.71,1380.29 1402.12,1380.29 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1457.71 1388.71 L1457.71 1388.71 L1513.3 1388.71 L1513.3 1388.71 L1457.71 1388.71 L1457.71 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1457.71,1388.71 1457.71,1388.71 1513.3,1388.71 1457.71,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1513.3 1388.71 L1513.3 1388.71 L1568.89 1388.71 L1568.89 1388.71 L1513.3 1388.71 L1513.3 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1513.3,1388.71 1513.3,1388.71 1568.89,1388.71 1513.3,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1568.89 1388.71 L1568.89 1388.71 L1624.48 1388.71 L1624.48 1388.71 L1568.89 1388.71 L1568.89 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1568.89,1388.71 1568.89,1388.71 1624.48,1388.71 1568.89,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1624.48 1380.29 L1624.48 1388.71 L1680.07 1388.71 L1680.07 1380.29 L1624.48 1380.29 L1624.48 1380.29  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1624.48,1380.29 1624.48,1388.71 1680.07,1388.71 1680.07,1380.29 1624.48,1380.29 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1680.07 1388.71 L1680.07 1388.71 L1735.65 1388.71 L1735.65 1388.71 L1680.07 1388.71 L1680.07 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1680.07,1388.71 1680.07,1388.71 1735.65,1388.71 1680.07,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1735.65 1380.29 L1735.65 1388.71 L1791.24 1388.71 L1791.24 1380.29 L1735.65 1380.29 L1735.65 1380.29  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1735.65,1380.29 1735.65,1388.71 1791.24,1388.71 1791.24,1380.29 1735.65,1380.29 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1791.24 1388.71 L1791.24 1388.71 L1846.83 1388.71 L1846.83 1388.71 L1791.24 1388.71 L1791.24 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1791.24,1388.71 1791.24,1388.71 1846.83,1388.71 1791.24,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1846.83 1388.71 L1846.83 1388.71 L1902.42 1388.71 L1902.42 1388.71 L1846.83 1388.71 L1846.83 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1846.83,1388.71 1846.83,1388.71 1902.42,1388.71 1846.83,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1902.42 1388.71 L1902.42 1388.71 L1958.01 1388.71 L1958.01 1388.71 L1902.42 1388.71 L1902.42 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1902.42,1388.71 1902.42,1388.71 1958.01,1388.71 1902.42,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M1958.01 1388.71 L1958.01 1388.71 L2013.6 1388.71 L2013.6 1388.71 L1958.01 1388.71 L1958.01 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1958.01,1388.71 1958.01,1388.71 2013.6,1388.71 1958.01,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M2013.6 1388.71 L2013.6 1388.71 L2069.19 1388.71 L2069.19 1388.71 L2013.6 1388.71 L2013.6 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2013.6,1388.71 2013.6,1388.71 2069.19,1388.71 2013.6,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M2069.19 1388.71 L2069.19 1388.71 L2124.78 1388.71 L2124.78 1388.71 L2069.19 1388.71 L2069.19 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2069.19,1388.71 2069.19,1388.71 2124.78,1388.71 2069.19,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M2124.78 1388.71 L2124.78 1388.71 L2180.36 1388.71 L2180.36 1388.71 L2124.78 1388.71 L2124.78 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2124.78,1388.71 2124.78,1388.71 2180.36,1388.71 2124.78,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9002)\" d=\"\n",
       "M2180.36 1380.29 L2180.36 1388.71 L2235.95 1388.71 L2235.95 1380.29 L2180.36 1380.29 L2180.36 1380.29  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2180.36,1380.29 2180.36,1388.71 2235.95,1388.71 2235.95,1380.29 2180.36,1380.29 \n",
       "  \"/>\n",
       "</svg>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n",
       "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"600\" height=\"400\" viewBox=\"0 0 2400 1600\">\n",
       "<defs>\n",
       "  <clipPath id=\"clip9400\">\n",
       "    <rect x=\"0\" y=\"0\" width=\"2400\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip9400)\" d=\"\n",
       "M0 1600 L2400 1600 L2400 0 L0 0  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip9401\">\n",
       "    <rect x=\"480\" y=\"0\" width=\"1681\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip9400)\" d=\"\n",
       "M202.373 1425.62 L2352.76 1425.62 L2352.76 121.675 L202.373 121.675  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip9402\">\n",
       "    <rect x=\"202\" y=\"121\" width=\"2151\" height=\"1305\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  525.701,1425.62 525.701,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  867.457,1425.62 867.457,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1209.21,1425.62 1209.21,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1550.97,1425.62 1550.97,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1892.73,1425.62 1892.73,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  2234.48,1425.62 2234.48,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,1388.71 2352.76,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,1137.67 2352.76,1137.67 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,886.618 2352.76,886.618 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,635.57 2352.76,635.57 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,384.522 2352.76,384.522 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,133.474 2352.76,133.474 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1425.62 2352.76,1425.62 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1425.62 202.373,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  525.701,1425.62 525.701,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  867.457,1425.62 867.457,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1209.21,1425.62 1209.21,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1550.97,1425.62 1550.97,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1892.73,1425.62 1892.73,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2234.48,1425.62 2234.48,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1388.71 228.178,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1137.67 228.178,1137.67 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,886.618 228.178,886.618 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,635.57 228.178,635.57 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,384.522 228.178,384.522 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,133.474 228.178,133.474 \n",
       "  \"/>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 525.701, 1479.62)\" x=\"525.701\" y=\"1479.62\">-5.5</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 867.457, 1479.62)\" x=\"867.457\" y=\"1479.62\">-5.0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1209.21, 1479.62)\" x=\"1209.21\" y=\"1479.62\">-4.5</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1550.97, 1479.62)\" x=\"1550.97\" y=\"1479.62\">-4.0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1892.73, 1479.62)\" x=\"1892.73\" y=\"1479.62\">-3.5</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 2234.48, 1479.62)\" x=\"2234.48\" y=\"1479.62\">-3.0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 1406.21)\" x=\"178.373\" y=\"1406.21\">0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 1155.17)\" x=\"178.373\" y=\"1155.17\">10</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 904.118)\" x=\"178.373\" y=\"904.118\">20</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 653.07)\" x=\"178.373\" y=\"653.07\">30</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 402.022)\" x=\"178.373\" y=\"402.022\">40</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 150.974)\" x=\"178.373\" y=\"150.974\">50</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:84px; text-anchor:middle;\" transform=\"rotate(0, 1277.56, 73.2)\" x=\"1277.56\" y=\"73.2\">Log Maximum Constraint Violation</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(0, 1277.56, 1559.48)\" x=\"1277.56\" y=\"1559.48\">log( || Constraint Violation ||_inf)</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(-90, 89.2861, 773.647)\" x=\"89.2861\" y=\"773.647\">Occurences</text>\n",
       "</g>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M320.648 1363.61 L320.648 1388.71 L388.999 1388.71 L388.999 1363.61 L320.648 1363.61 L320.648 1363.61  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  320.648,1363.61 320.648,1388.71 388.999,1388.71 388.999,1363.61 320.648,1363.61 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M388.999 1388.71 L388.999 1388.71 L457.35 1388.71 L457.35 1388.71 L388.999 1388.71 L388.999 1388.71  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  388.999,1388.71 388.999,1388.71 457.35,1388.71 388.999,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M457.35 1388.71 L457.35 1388.71 L525.701 1388.71 L525.701 1388.71 L457.35 1388.71 L457.35 1388.71  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  457.35,1388.71 457.35,1388.71 525.701,1388.71 457.35,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M525.701 1388.71 L525.701 1388.71 L594.053 1388.71 L594.053 1388.71 L525.701 1388.71 L525.701 1388.71  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  525.701,1388.71 525.701,1388.71 594.053,1388.71 525.701,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M594.053 1388.71 L594.053 1388.71 L662.404 1388.71 L662.404 1388.71 L594.053 1388.71 L594.053 1388.71  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  594.053,1388.71 594.053,1388.71 662.404,1388.71 594.053,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M662.404 1338.5 L662.404 1388.71 L730.755 1388.71 L730.755 1338.5 L662.404 1338.5 L662.404 1338.5  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  662.404,1338.5 662.404,1388.71 730.755,1388.71 730.755,1338.5 662.404,1338.5 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M730.755 1388.71 L730.755 1388.71 L799.106 1388.71 L799.106 1388.71 L730.755 1388.71 L730.755 1388.71  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  730.755,1388.71 730.755,1388.71 799.106,1388.71 730.755,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M799.106 1338.5 L799.106 1388.71 L867.457 1388.71 L867.457 1338.5 L799.106 1338.5 L799.106 1338.5  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  799.106,1338.5 799.106,1388.71 867.457,1388.71 867.457,1338.5 799.106,1338.5 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M867.457 1388.71 L867.457 1388.71 L935.808 1388.71 L935.808 1388.71 L867.457 1388.71 L867.457 1388.71  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  867.457,1388.71 867.457,1388.71 935.808,1388.71 867.457,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M935.808 1388.71 L935.808 1388.71 L1004.16 1388.71 L1004.16 1388.71 L935.808 1388.71 L935.808 1388.71  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  935.808,1388.71 935.808,1388.71 1004.16,1388.71 935.808,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1004.16 1363.61 L1004.16 1388.71 L1072.51 1388.71 L1072.51 1363.61 L1004.16 1363.61 L1004.16 1363.61  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1004.16,1363.61 1004.16,1388.71 1072.51,1388.71 1072.51,1363.61 1004.16,1363.61 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1072.51 1388.71 L1072.51 1388.71 L1140.86 1388.71 L1140.86 1388.71 L1072.51 1388.71 L1072.51 1388.71  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1072.51,1388.71 1072.51,1388.71 1140.86,1388.71 1072.51,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1140.86 1363.61 L1140.86 1388.71 L1209.21 1388.71 L1209.21 1363.61 L1140.86 1363.61 L1140.86 1363.61  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1140.86,1363.61 1140.86,1388.71 1209.21,1388.71 1209.21,1363.61 1140.86,1363.61 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1209.21 1338.5 L1209.21 1388.71 L1277.56 1388.71 L1277.56 1338.5 L1209.21 1338.5 L1209.21 1338.5  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1209.21,1338.5 1209.21,1388.71 1277.56,1388.71 1277.56,1338.5 1209.21,1338.5 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1277.56 1288.3 L1277.56 1388.71 L1345.92 1388.71 L1345.92 1288.3 L1277.56 1288.3 L1277.56 1288.3  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1277.56,1288.3 1277.56,1388.71 1345.92,1388.71 1345.92,1288.3 1277.56,1288.3 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1345.92 1238.09 L1345.92 1388.71 L1414.27 1388.71 L1414.27 1238.09 L1345.92 1238.09 L1345.92 1238.09  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1345.92,1238.09 1345.92,1388.71 1414.27,1388.71 1414.27,1238.09 1345.92,1238.09 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1414.27 1212.98 L1414.27 1388.71 L1482.62 1388.71 L1482.62 1212.98 L1414.27 1212.98 L1414.27 1212.98  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1414.27,1212.98 1414.27,1388.71 1482.62,1388.71 1482.62,1212.98 1414.27,1212.98 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1482.62 1238.09 L1482.62 1388.71 L1550.97 1388.71 L1550.97 1238.09 L1482.62 1238.09 L1482.62 1238.09  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1482.62,1238.09 1482.62,1388.71 1550.97,1388.71 1550.97,1238.09 1482.62,1238.09 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1550.97 1313.4 L1550.97 1388.71 L1619.32 1388.71 L1619.32 1313.4 L1550.97 1313.4 L1550.97 1313.4  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1550.97,1313.4 1550.97,1388.71 1619.32,1388.71 1619.32,1313.4 1550.97,1313.4 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1619.32 1338.5 L1619.32 1388.71 L1687.67 1388.71 L1687.67 1338.5 L1619.32 1338.5 L1619.32 1338.5  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1619.32,1338.5 1619.32,1388.71 1687.67,1388.71 1687.67,1338.5 1619.32,1338.5 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1687.67 1338.5 L1687.67 1388.71 L1756.02 1388.71 L1756.02 1338.5 L1687.67 1338.5 L1687.67 1338.5  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1687.67,1338.5 1687.67,1388.71 1756.02,1388.71 1756.02,1338.5 1687.67,1338.5 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1756.02 1263.19 L1756.02 1388.71 L1824.37 1388.71 L1824.37 1263.19 L1756.02 1263.19 L1756.02 1263.19  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1756.02,1263.19 1756.02,1388.71 1824.37,1388.71 1824.37,1263.19 1756.02,1263.19 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1824.37 1137.67 L1824.37 1388.71 L1892.73 1388.71 L1892.73 1137.67 L1824.37 1137.67 L1824.37 1137.67  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1824.37,1137.67 1824.37,1388.71 1892.73,1388.71 1892.73,1137.67 1824.37,1137.67 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1892.73 836.409 L1892.73 1388.71 L1961.08 1388.71 L1961.08 836.409 L1892.73 836.409 L1892.73 836.409  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1892.73,836.409 1892.73,1388.71 1961.08,1388.71 1961.08,836.409 1892.73,836.409 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M1961.08 284.103 L1961.08 1388.71 L2029.43 1388.71 L2029.43 284.103 L1961.08 284.103 L1961.08 284.103  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1961.08,284.103 1961.08,1388.71 2029.43,1388.71 2029.43,284.103 1961.08,284.103 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M2029.43 158.579 L2029.43 1388.71 L2097.78 1388.71 L2097.78 158.579 L2029.43 158.579 L2029.43 158.579  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2029.43,158.579 2029.43,1388.71 2097.78,1388.71 2097.78,158.579 2029.43,158.579 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M2097.78 861.514 L2097.78 1388.71 L2166.13 1388.71 L2166.13 861.514 L2097.78 861.514 L2097.78 861.514  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2097.78,861.514 2097.78,1388.71 2166.13,1388.71 2166.13,861.514 2097.78,861.514 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9402)\" d=\"\n",
       "M2166.13 1137.67 L2166.13 1388.71 L2234.48 1388.71 L2234.48 1137.67 L2166.13 1137.67 L2166.13 1137.67  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2166.13,1137.67 2166.13,1388.71 2234.48,1388.71 2234.48,1137.67 2166.13,1137.67 \n",
       "  \"/>\n",
       "</svg>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n",
       "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"600\" height=\"400\" viewBox=\"0 0 2400 1600\">\n",
       "<defs>\n",
       "  <clipPath id=\"clip9800\">\n",
       "    <rect x=\"0\" y=\"0\" width=\"2400\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip9800)\" d=\"\n",
       "M0 1600 L2400 1600 L2400 0 L0 0  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip9801\">\n",
       "    <rect x=\"480\" y=\"0\" width=\"1681\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip9800)\" d=\"\n",
       "M229.135 1425.62 L2352.76 1425.62 L2352.76 121.675 L229.135 121.675  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip9802\">\n",
       "    <rect x=\"229\" y=\"121\" width=\"2125\" height=\"1305\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  345.938,1425.62 345.938,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  775.487,1425.62 775.487,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1205.04,1425.62 1205.04,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1634.58,1425.62 1634.58,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  2064.13,1425.62 2064.13,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  229.135,1388.71 2352.76,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  229.135,1048.9 2352.76,1048.9 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  229.135,709.082 2352.76,709.082 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  229.135,369.265 2352.76,369.265 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,1425.62 2352.76,1425.62 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,1425.62 229.135,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  345.938,1425.62 345.938,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  775.487,1425.62 775.487,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1205.04,1425.62 1205.04,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1634.58,1425.62 1634.58,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2064.13,1425.62 2064.13,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,1388.71 254.619,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,1048.9 254.619,1048.9 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,709.082 254.619,709.082 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip9800)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  229.135,369.265 254.619,369.265 \n",
       "  \"/>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 345.938, 1479.62)\" x=\"345.938\" y=\"1479.62\">0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 775.487, 1479.62)\" x=\"775.487\" y=\"1479.62\">25</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1205.04, 1479.62)\" x=\"1205.04\" y=\"1479.62\">50</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1634.58, 1479.62)\" x=\"1634.58\" y=\"1479.62\">75</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 2064.13, 1479.62)\" x=\"2064.13\" y=\"1479.62\">100</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 205.135, 1406.21)\" x=\"205.135\" y=\"1406.21\">0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 205.135, 1066.4)\" x=\"205.135\" y=\"1066.4\">50</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 205.135, 726.582)\" x=\"205.135\" y=\"726.582\">100</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 205.135, 386.765)\" x=\"205.135\" y=\"386.765\">150</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:84px; text-anchor:middle;\" transform=\"rotate(0, 1290.95, 73.2)\" x=\"1290.95\" y=\"73.2\">Total Number of Iterations to Converge</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(0, 1290.95, 1559.48)\" x=\"1290.95\" y=\"1559.48\">Total Number of Iterations</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip9800)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(-90, 89.2861, 773.647)\" x=\"89.2861\" y=\"773.647\">Occurences</text>\n",
       "</g>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M345.938 1381.92 L345.938 1388.71 L431.848 1388.71 L431.848 1381.92 L345.938 1381.92 L345.938 1381.92  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  345.938,1381.92 345.938,1388.71 431.848,1388.71 431.848,1381.92 345.938,1381.92 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M431.848 158.579 L431.848 1388.71 L517.758 1388.71 L517.758 158.579 L431.848 158.579 L431.848 158.579  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  431.848,158.579 431.848,1388.71 517.758,1388.71 517.758,158.579 431.848,158.579 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M517.758 1388.71 L517.758 1388.71 L603.667 1388.71 L603.667 1388.71 L517.758 1388.71 L517.758 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  517.758,1388.71 517.758,1388.71 603.667,1388.71 517.758,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M603.667 1375.12 L603.667 1388.71 L689.577 1388.71 L689.577 1375.12 L603.667 1375.12 L603.667 1375.12  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  603.667,1375.12 603.667,1388.71 689.577,1388.71 689.577,1375.12 603.667,1375.12 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M689.577 1388.71 L689.577 1388.71 L775.487 1388.71 L775.487 1388.71 L689.577 1388.71 L689.577 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  689.577,1388.71 689.577,1388.71 775.487,1388.71 689.577,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M775.487 1368.33 L775.487 1388.71 L861.397 1388.71 L861.397 1368.33 L775.487 1368.33 L775.487 1368.33  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  775.487,1368.33 775.487,1388.71 861.397,1388.71 861.397,1368.33 775.487,1368.33 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M861.397 1375.12 L861.397 1388.71 L947.307 1388.71 L947.307 1375.12 L861.397 1375.12 L861.397 1375.12  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  861.397,1375.12 861.397,1388.71 947.307,1388.71 947.307,1375.12 861.397,1375.12 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M947.307 1368.33 L947.307 1388.71 L1033.22 1388.71 L1033.22 1368.33 L947.307 1368.33 L947.307 1368.33  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  947.307,1368.33 947.307,1388.71 1033.22,1388.71 1033.22,1368.33 947.307,1368.33 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1033.22 1375.12 L1033.22 1388.71 L1119.13 1388.71 L1119.13 1375.12 L1033.22 1375.12 L1033.22 1375.12  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1033.22,1375.12 1033.22,1388.71 1119.13,1388.71 1119.13,1375.12 1033.22,1375.12 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1119.13 1375.12 L1119.13 1388.71 L1205.04 1388.71 L1205.04 1375.12 L1119.13 1375.12 L1119.13 1375.12  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1119.13,1375.12 1119.13,1388.71 1205.04,1388.71 1205.04,1375.12 1119.13,1375.12 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1205.04 1388.71 L1205.04 1388.71 L1290.95 1388.71 L1290.95 1388.71 L1205.04 1388.71 L1205.04 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1205.04,1388.71 1205.04,1388.71 1290.95,1388.71 1205.04,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1290.95 1381.92 L1290.95 1388.71 L1376.86 1388.71 L1376.86 1381.92 L1290.95 1381.92 L1290.95 1381.92  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1290.95,1381.92 1290.95,1388.71 1376.86,1388.71 1376.86,1381.92 1290.95,1381.92 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1376.86 1388.71 L1376.86 1388.71 L1462.77 1388.71 L1462.77 1388.71 L1376.86 1388.71 L1376.86 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1376.86,1388.71 1376.86,1388.71 1462.77,1388.71 1376.86,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1462.77 1388.71 L1462.77 1388.71 L1548.67 1388.71 L1548.67 1388.71 L1462.77 1388.71 L1462.77 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1462.77,1388.71 1462.77,1388.71 1548.67,1388.71 1462.77,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1548.67 1381.92 L1548.67 1388.71 L1634.58 1388.71 L1634.58 1381.92 L1548.67 1381.92 L1548.67 1381.92  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1548.67,1381.92 1548.67,1388.71 1634.58,1388.71 1634.58,1381.92 1548.67,1381.92 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1634.58 1381.92 L1634.58 1388.71 L1720.49 1388.71 L1720.49 1381.92 L1634.58 1381.92 L1634.58 1381.92  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1634.58,1381.92 1634.58,1388.71 1720.49,1388.71 1720.49,1381.92 1634.58,1381.92 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1720.49 1388.71 L1720.49 1388.71 L1806.4 1388.71 L1806.4 1388.71 L1720.49 1388.71 L1720.49 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1720.49,1388.71 1720.49,1388.71 1806.4,1388.71 1720.49,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1806.4 1388.71 L1806.4 1388.71 L1892.31 1388.71 L1892.31 1388.71 L1806.4 1388.71 L1806.4 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1806.4,1388.71 1806.4,1388.71 1892.31,1388.71 1806.4,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1892.31 1388.71 L1892.31 1388.71 L1978.22 1388.71 L1978.22 1388.71 L1892.31 1388.71 L1892.31 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1892.31,1388.71 1892.31,1388.71 1978.22,1388.71 1892.31,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M1978.22 1388.71 L1978.22 1388.71 L2064.13 1388.71 L2064.13 1388.71 L1978.22 1388.71 L1978.22 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1978.22,1388.71 1978.22,1388.71 2064.13,1388.71 1978.22,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M2064.13 1388.71 L2064.13 1388.71 L2150.04 1388.71 L2150.04 1388.71 L2064.13 1388.71 L2064.13 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2064.13,1388.71 2064.13,1388.71 2150.04,1388.71 2064.13,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip9802)\" d=\"\n",
       "M2150.04 1381.92 L2150.04 1388.71 L2235.95 1388.71 L2235.95 1381.92 L2150.04 1381.92 L2150.04 1381.92  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip9802)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2150.04,1381.92 2150.04,1388.71 2235.95,1388.71 2235.95,1381.92 2150.04,1381.92 \n",
       "  \"/>\n",
       "</svg>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n",
       "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"600\" height=\"400\" viewBox=\"0 0 2400 1600\">\n",
       "<defs>\n",
       "  <clipPath id=\"clip0200\">\n",
       "    <rect x=\"0\" y=\"0\" width=\"2400\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip0200)\" d=\"\n",
       "M0 1600 L2400 1600 L2400 0 L0 0  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip0201\">\n",
       "    <rect x=\"480\" y=\"0\" width=\"1681\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip0200)\" d=\"\n",
       "M202.373 1425.62 L2352.76 1425.62 L2352.76 121.675 L202.373 121.675  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip0202\">\n",
       "    <rect x=\"202\" y=\"121\" width=\"2151\" height=\"1305\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  320.648,1425.62 320.648,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  837.9,1425.62 837.9,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1355.15,1425.62 1355.15,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1872.4,1425.62 1872.4,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,1388.71 2352.76,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,1169.05 2352.76,1169.05 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,949.38 2352.76,949.38 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,729.713 2352.76,729.713 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,510.046 2352.76,510.046 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,290.379 2352.76,290.379 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1425.62 2352.76,1425.62 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1425.62 202.373,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  320.648,1425.62 320.648,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  837.9,1425.62 837.9,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1355.15,1425.62 1355.15,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1872.4,1425.62 1872.4,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1388.71 228.178,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1169.05 228.178,1169.05 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,949.38 228.178,949.38 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,729.713 228.178,729.713 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,510.046 228.178,510.046 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0200)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,290.379 228.178,290.379 \n",
       "  \"/>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 320.648, 1479.62)\" x=\"320.648\" y=\"1479.62\">-4</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 837.9, 1479.62)\" x=\"837.9\" y=\"1479.62\">-2</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1355.15, 1479.62)\" x=\"1355.15\" y=\"1479.62\">0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1872.4, 1479.62)\" x=\"1872.4\" y=\"1479.62\">2</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 1406.21)\" x=\"178.373\" y=\"1406.21\">0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 1186.55)\" x=\"178.373\" y=\"1186.55\">10</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 966.88)\" x=\"178.373\" y=\"966.88\">20</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 747.213)\" x=\"178.373\" y=\"747.213\">30</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 527.546)\" x=\"178.373\" y=\"527.546\">40</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 307.879)\" x=\"178.373\" y=\"307.879\">50</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:84px; text-anchor:middle;\" transform=\"rotate(0, 1277.56, 73.2)\" x=\"1277.56\" y=\"73.2\">Optimality Constraint Satisfaction</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(0, 1277.56, 1559.48)\" x=\"1277.56\" y=\"1559.48\">log(||G||_2)</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0200)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(-90, 89.2861, 773.647)\" x=\"89.2861\" y=\"773.647\">Occurences</text>\n",
       "</g>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M320.648 1366.75 L320.648 1388.71 L372.373 1388.71 L372.373 1366.75 L320.648 1366.75 L320.648 1366.75  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  320.648,1366.75 320.648,1388.71 372.373,1388.71 372.373,1366.75 320.648,1366.75 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M372.373 1388.71 L372.373 1388.71 L424.098 1388.71 L424.098 1388.71 L372.373 1388.71 L372.373 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  372.373,1388.71 372.373,1388.71 424.098,1388.71 372.373,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M424.098 949.38 L424.098 1388.71 L475.823 1388.71 L475.823 949.38 L424.098 949.38 L424.098 949.38  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  424.098,949.38 424.098,1388.71 475.823,1388.71 475.823,949.38 424.098,949.38 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M475.823 158.579 L475.823 1388.71 L527.549 1388.71 L527.549 158.579 L475.823 158.579 L475.823 158.579  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  475.823,158.579 475.823,1388.71 527.549,1388.71 527.549,158.579 475.823,158.579 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M527.549 400.213 L527.549 1388.71 L579.274 1388.71 L579.274 400.213 L527.549 400.213 L527.549 400.213  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  527.549,400.213 527.549,1388.71 579.274,1388.71 579.274,400.213 527.549,400.213 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M579.274 817.58 L579.274 1388.71 L630.999 1388.71 L630.999 817.58 L579.274 817.58 L579.274 817.58  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  579.274,817.58 579.274,1388.71 630.999,1388.71 630.999,817.58 579.274,817.58 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M630.999 729.713 L630.999 1388.71 L682.724 1388.71 L682.724 729.713 L630.999 729.713 L630.999 729.713  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  630.999,729.713 630.999,1388.71 682.724,1388.71 682.724,729.713 630.999,729.713 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M682.724 1191.01 L682.724 1388.71 L734.45 1388.71 L734.45 1191.01 L682.724 1191.01 L682.724 1191.01  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  682.724,1191.01 682.724,1388.71 734.45,1388.71 734.45,1191.01 682.724,1191.01 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M734.45 1322.81 L734.45 1388.71 L786.175 1388.71 L786.175 1322.81 L734.45 1322.81 L734.45 1322.81  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  734.45,1322.81 734.45,1388.71 786.175,1388.71 786.175,1322.81 734.45,1322.81 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M786.175 1300.85 L786.175 1388.71 L837.9 1388.71 L837.9 1300.85 L786.175 1300.85 L786.175 1300.85  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  786.175,1300.85 786.175,1388.71 837.9,1388.71 837.9,1300.85 786.175,1300.85 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M837.9 1388.71 L837.9 1388.71 L889.625 1388.71 L889.625 1388.71 L837.9 1388.71 L837.9 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  837.9,1388.71 837.9,1388.71 889.625,1388.71 837.9,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M889.625 1366.75 L889.625 1388.71 L941.35 1388.71 L941.35 1366.75 L889.625 1366.75 L889.625 1366.75  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  889.625,1366.75 889.625,1388.71 941.35,1388.71 941.35,1366.75 889.625,1366.75 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M941.35 1388.71 L941.35 1388.71 L993.076 1388.71 L993.076 1388.71 L941.35 1388.71 L941.35 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  941.35,1388.71 941.35,1388.71 993.076,1388.71 941.35,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M993.076 1388.71 L993.076 1388.71 L1044.8 1388.71 L1044.8 1388.71 L993.076 1388.71 L993.076 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  993.076,1388.71 993.076,1388.71 1044.8,1388.71 993.076,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1044.8 1344.78 L1044.8 1388.71 L1096.53 1388.71 L1096.53 1344.78 L1044.8 1344.78 L1044.8 1344.78  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1044.8,1344.78 1044.8,1388.71 1096.53,1388.71 1096.53,1344.78 1044.8,1344.78 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1096.53 1388.71 L1096.53 1388.71 L1148.25 1388.71 L1148.25 1388.71 L1096.53 1388.71 L1096.53 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1096.53,1388.71 1096.53,1388.71 1148.25,1388.71 1096.53,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1148.25 1388.71 L1148.25 1388.71 L1199.98 1388.71 L1199.98 1388.71 L1148.25 1388.71 L1148.25 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1148.25,1388.71 1148.25,1388.71 1199.98,1388.71 1148.25,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1199.98 1366.75 L1199.98 1388.71 L1251.7 1388.71 L1251.7 1366.75 L1199.98 1366.75 L1199.98 1366.75  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1199.98,1366.75 1199.98,1388.71 1251.7,1388.71 1251.7,1366.75 1199.98,1366.75 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1251.7 1388.71 L1251.7 1388.71 L1303.43 1388.71 L1303.43 1388.71 L1251.7 1388.71 L1251.7 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1251.7,1388.71 1251.7,1388.71 1303.43,1388.71 1251.7,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1303.43 1366.75 L1303.43 1388.71 L1355.15 1388.71 L1355.15 1366.75 L1303.43 1366.75 L1303.43 1366.75  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1303.43,1366.75 1303.43,1388.71 1355.15,1388.71 1355.15,1366.75 1303.43,1366.75 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1355.15 1388.71 L1355.15 1388.71 L1406.88 1388.71 L1406.88 1388.71 L1355.15 1388.71 L1355.15 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1355.15,1388.71 1355.15,1388.71 1406.88,1388.71 1355.15,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1406.88 1388.71 L1406.88 1388.71 L1458.6 1388.71 L1458.6 1388.71 L1406.88 1388.71 L1406.88 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1406.88,1388.71 1406.88,1388.71 1458.6,1388.71 1406.88,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1458.6 1388.71 L1458.6 1388.71 L1510.33 1388.71 L1510.33 1388.71 L1458.6 1388.71 L1458.6 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1458.6,1388.71 1458.6,1388.71 1510.33,1388.71 1458.6,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1510.33 1388.71 L1510.33 1388.71 L1562.05 1388.71 L1562.05 1388.71 L1510.33 1388.71 L1510.33 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1510.33,1388.71 1510.33,1388.71 1562.05,1388.71 1510.33,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1562.05 1388.71 L1562.05 1388.71 L1613.78 1388.71 L1613.78 1388.71 L1562.05 1388.71 L1562.05 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1562.05,1388.71 1562.05,1388.71 1613.78,1388.71 1562.05,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1613.78 1388.71 L1613.78 1388.71 L1665.5 1388.71 L1665.5 1388.71 L1613.78 1388.71 L1613.78 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1613.78,1388.71 1613.78,1388.71 1665.5,1388.71 1613.78,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1665.5 1388.71 L1665.5 1388.71 L1717.23 1388.71 L1717.23 1388.71 L1665.5 1388.71 L1665.5 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1665.5,1388.71 1665.5,1388.71 1717.23,1388.71 1665.5,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1717.23 1388.71 L1717.23 1388.71 L1768.95 1388.71 L1768.95 1388.71 L1717.23 1388.71 L1717.23 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1717.23,1388.71 1717.23,1388.71 1768.95,1388.71 1717.23,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1768.95 1388.71 L1768.95 1388.71 L1820.68 1388.71 L1820.68 1388.71 L1768.95 1388.71 L1768.95 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1768.95,1388.71 1768.95,1388.71 1820.68,1388.71 1768.95,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1820.68 1388.71 L1820.68 1388.71 L1872.4 1388.71 L1872.4 1388.71 L1820.68 1388.71 L1820.68 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1820.68,1388.71 1820.68,1388.71 1872.4,1388.71 1820.68,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1872.4 1388.71 L1872.4 1388.71 L1924.13 1388.71 L1924.13 1388.71 L1872.4 1388.71 L1872.4 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1872.4,1388.71 1872.4,1388.71 1924.13,1388.71 1872.4,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1924.13 1388.71 L1924.13 1388.71 L1975.85 1388.71 L1975.85 1388.71 L1924.13 1388.71 L1924.13 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1924.13,1388.71 1924.13,1388.71 1975.85,1388.71 1924.13,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M1975.85 1388.71 L1975.85 1388.71 L2027.58 1388.71 L2027.58 1388.71 L1975.85 1388.71 L1975.85 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1975.85,1388.71 1975.85,1388.71 2027.58,1388.71 1975.85,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M2027.58 1388.71 L2027.58 1388.71 L2079.31 1388.71 L2079.31 1388.71 L2027.58 1388.71 L2027.58 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2027.58,1388.71 2027.58,1388.71 2079.31,1388.71 2027.58,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M2079.31 1388.71 L2079.31 1388.71 L2131.03 1388.71 L2131.03 1388.71 L2079.31 1388.71 L2079.31 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2079.31,1388.71 2079.31,1388.71 2131.03,1388.71 2079.31,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M2131.03 1388.71 L2131.03 1388.71 L2182.76 1388.71 L2182.76 1388.71 L2131.03 1388.71 L2131.03 1388.71  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2131.03,1388.71 2131.03,1388.71 2182.76,1388.71 2131.03,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0202)\" d=\"\n",
       "M2182.76 1366.75 L2182.76 1388.71 L2234.48 1388.71 L2234.48 1366.75 L2182.76 1366.75 L2182.76 1366.75  Z\n",
       "  \" fill=\"#ffff00\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0202)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2182.76,1366.75 2182.76,1388.71 2234.48,1388.71 2234.48,1366.75 2182.76,1366.75 \n",
       "  \"/>\n",
       "</svg>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Time required to solve the problem\n",
    "visualize_solve_time(algames_sampler; save=false)\n",
    "\n",
    "# Maximum constraint violation\n",
    "visualize_cmax(algames_sampler; save=false)\n",
    "\n",
    "# Number of iterations (Newton step for ALGAMES, Riccati backwardpass for iLQGames)\n",
    "visualize_iterations_total(algames_sampler; save=false)\n",
    "\n",
    "# Optimality constraint satisfaction \n",
    "visualize_optimality_merit(algames_sampler; save=false)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Plot the histograms compiling the results for ilQGames"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n",
       "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"600\" height=\"400\" viewBox=\"0 0 2400 1600\">\n",
       "<defs>\n",
       "  <clipPath id=\"clip0600\">\n",
       "    <rect x=\"0\" y=\"0\" width=\"2400\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip0600)\" d=\"\n",
       "M0 1600 L2400 1600 L2400 0 L0 0  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip0601\">\n",
       "    <rect x=\"480\" y=\"0\" width=\"1681\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip0600)\" d=\"\n",
       "M202.373 1425.62 L2352.76 1425.62 L2352.76 121.675 L202.373 121.675  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip0602\">\n",
       "    <rect x=\"202\" y=\"121\" width=\"2151\" height=\"1305\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  559.877,1425.62 559.877,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  958.592,1425.62 958.592,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1357.31,1425.62 1357.31,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1756.02,1425.62 1756.02,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  2154.74,1425.62 2154.74,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,1388.71 2352.76,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,1205.11 2352.76,1205.11 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,1021.51 2352.76,1021.51 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,837.908 2352.76,837.908 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,654.305 2352.76,654.305 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,470.703 2352.76,470.703 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,287.101 2352.76,287.101 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1425.62 2352.76,1425.62 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1425.62 202.373,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  559.877,1425.62 559.877,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  958.592,1425.62 958.592,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1357.31,1425.62 1357.31,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1756.02,1425.62 1756.02,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2154.74,1425.62 2154.74,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1388.71 228.178,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1205.11 228.178,1205.11 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1021.51 228.178,1021.51 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,837.908 228.178,837.908 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,654.305 228.178,654.305 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,470.703 228.178,470.703 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip0600)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,287.101 228.178,287.101 \n",
       "  \"/>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 559.877, 1479.62)\" x=\"559.877\" y=\"1479.62\">0.05</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 958.592, 1479.62)\" x=\"958.592\" y=\"1479.62\">0.10</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1357.31, 1479.62)\" x=\"1357.31\" y=\"1479.62\">0.15</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1756.02, 1479.62)\" x=\"1756.02\" y=\"1479.62\">0.20</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 2154.74, 1479.62)\" x=\"2154.74\" y=\"1479.62\">0.25</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 1406.21)\" x=\"178.373\" y=\"1406.21\">0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 1222.61)\" x=\"178.373\" y=\"1222.61\">10</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 1039.01)\" x=\"178.373\" y=\"1039.01\">20</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 855.408)\" x=\"178.373\" y=\"855.408\">30</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 671.805)\" x=\"178.373\" y=\"671.805\">40</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 488.203)\" x=\"178.373\" y=\"488.203\">50</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 304.601)\" x=\"178.373\" y=\"304.601\">60</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:84px; text-anchor:middle;\" transform=\"rotate(0, 1277.56, 73.2)\" x=\"1277.56\" y=\"73.2\">Solve Time</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(0, 1277.56, 1559.48)\" x=\"1277.56\" y=\"1559.48\">Solve Time in s</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip0600)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(-90, 89.2861, 773.647)\" x=\"89.2861\" y=\"773.647\">Occurences</text>\n",
       "</g>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M320.648 1205.11 L320.648 1388.71 L400.391 1388.71 L400.391 1205.11 L320.648 1205.11 L320.648 1205.11  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  320.648,1205.11 320.648,1388.71 400.391,1388.71 400.391,1205.11 320.648,1205.11 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M400.391 415.622 L400.391 1388.71 L480.134 1388.71 L480.134 415.622 L400.391 415.622 L400.391 415.622  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  400.391,415.622 400.391,1388.71 480.134,1388.71 480.134,415.622 400.391,415.622 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M480.134 1241.83 L480.134 1388.71 L559.877 1388.71 L559.877 1241.83 L480.134 1241.83 L480.134 1241.83  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  480.134,1241.83 480.134,1388.71 559.877,1388.71 559.877,1241.83 480.134,1241.83 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M559.877 1388.71 L559.877 1388.71 L639.62 1388.71 L639.62 1388.71 L559.877 1388.71 L559.877 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  559.877,1388.71 559.877,1388.71 639.62,1388.71 559.877,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M639.62 1388.71 L639.62 1388.71 L719.363 1388.71 L719.363 1388.71 L639.62 1388.71 L639.62 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  639.62,1388.71 639.62,1388.71 719.363,1388.71 639.62,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M719.363 929.709 L719.363 1388.71 L799.106 1388.71 L799.106 929.709 L719.363 929.709 L719.363 929.709  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  719.363,929.709 719.363,1388.71 799.106,1388.71 799.106,929.709 719.363,929.709 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M799.106 158.579 L799.106 1388.71 L878.849 1388.71 L878.849 158.579 L799.106 158.579 L799.106 158.579  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  799.106,158.579 799.106,1388.71 878.849,1388.71 878.849,158.579 799.106,158.579 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M878.849 1278.55 L878.849 1388.71 L958.592 1388.71 L958.592 1278.55 L878.849 1278.55 L878.849 1278.55  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  878.849,1278.55 878.849,1388.71 958.592,1388.71 958.592,1278.55 878.849,1278.55 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M958.592 1370.35 L958.592 1388.71 L1038.34 1388.71 L1038.34 1370.35 L958.592 1370.35 L958.592 1370.35  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  958.592,1370.35 958.592,1388.71 1038.34,1388.71 1038.34,1370.35 958.592,1370.35 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1038.34 1296.91 L1038.34 1388.71 L1118.08 1388.71 L1118.08 1296.91 L1038.34 1296.91 L1038.34 1296.91  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1038.34,1296.91 1038.34,1388.71 1118.08,1388.71 1118.08,1296.91 1038.34,1296.91 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1118.08 1333.63 L1118.08 1388.71 L1197.82 1388.71 L1197.82 1333.63 L1118.08 1333.63 L1118.08 1333.63  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1118.08,1333.63 1118.08,1388.71 1197.82,1388.71 1197.82,1333.63 1118.08,1333.63 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1197.82 1333.63 L1197.82 1388.71 L1277.56 1388.71 L1277.56 1333.63 L1197.82 1333.63 L1197.82 1333.63  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1197.82,1333.63 1197.82,1388.71 1277.56,1388.71 1277.56,1333.63 1197.82,1333.63 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1277.56 1388.71 L1277.56 1388.71 L1357.31 1388.71 L1357.31 1388.71 L1277.56 1388.71 L1277.56 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1277.56,1388.71 1277.56,1388.71 1357.31,1388.71 1277.56,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1357.31 1351.99 L1357.31 1388.71 L1437.05 1388.71 L1437.05 1351.99 L1357.31 1351.99 L1357.31 1351.99  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1357.31,1351.99 1357.31,1388.71 1437.05,1388.71 1437.05,1351.99 1357.31,1351.99 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1437.05 1388.71 L1437.05 1388.71 L1516.79 1388.71 L1516.79 1388.71 L1437.05 1388.71 L1437.05 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1437.05,1388.71 1437.05,1388.71 1516.79,1388.71 1437.05,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1516.79 1351.99 L1516.79 1388.71 L1596.54 1388.71 L1596.54 1351.99 L1516.79 1351.99 L1516.79 1351.99  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1516.79,1351.99 1516.79,1388.71 1596.54,1388.71 1596.54,1351.99 1516.79,1351.99 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1596.54 1315.27 L1596.54 1388.71 L1676.28 1388.71 L1676.28 1315.27 L1596.54 1315.27 L1596.54 1315.27  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1596.54,1315.27 1596.54,1388.71 1676.28,1388.71 1676.28,1315.27 1596.54,1315.27 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1676.28 1370.35 L1676.28 1388.71 L1756.02 1388.71 L1756.02 1370.35 L1676.28 1370.35 L1676.28 1370.35  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1676.28,1370.35 1676.28,1388.71 1756.02,1388.71 1756.02,1370.35 1676.28,1370.35 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1756.02 1370.35 L1756.02 1388.71 L1835.77 1388.71 L1835.77 1370.35 L1756.02 1370.35 L1756.02 1370.35  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1756.02,1370.35 1756.02,1388.71 1835.77,1388.71 1835.77,1370.35 1756.02,1370.35 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1835.77 1333.63 L1835.77 1388.71 L1915.51 1388.71 L1915.51 1333.63 L1835.77 1333.63 L1835.77 1333.63  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1835.77,1333.63 1835.77,1388.71 1915.51,1388.71 1915.51,1333.63 1835.77,1333.63 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1915.51 1351.99 L1915.51 1388.71 L1995.25 1388.71 L1995.25 1351.99 L1915.51 1351.99 L1915.51 1351.99  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1915.51,1351.99 1915.51,1388.71 1995.25,1388.71 1995.25,1351.99 1915.51,1351.99 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M1995.25 1351.99 L1995.25 1388.71 L2074.99 1388.71 L2074.99 1351.99 L1995.25 1351.99 L1995.25 1351.99  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1995.25,1351.99 1995.25,1388.71 2074.99,1388.71 2074.99,1351.99 1995.25,1351.99 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M2074.99 1388.71 L2074.99 1388.71 L2154.74 1388.71 L2154.74 1388.71 L2074.99 1388.71 L2074.99 1388.71  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2074.99,1388.71 2074.99,1388.71 2154.74,1388.71 2074.99,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip0602)\" d=\"\n",
       "M2154.74 1351.99 L2154.74 1388.71 L2234.48 1388.71 L2234.48 1351.99 L2154.74 1351.99 L2154.74 1351.99  Z\n",
       "  \" fill=\"#008000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip0602)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2154.74,1351.99 2154.74,1388.71 2234.48,1388.71 2234.48,1351.99 2154.74,1351.99 \n",
       "  \"/>\n",
       "</svg>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n",
       "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"600\" height=\"400\" viewBox=\"0 0 2400 1600\">\n",
       "<defs>\n",
       "  <clipPath id=\"clip1000\">\n",
       "    <rect x=\"0\" y=\"0\" width=\"2400\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip1000)\" d=\"\n",
       "M0 1600 L2400 1600 L2400 0 L0 0  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip1001\">\n",
       "    <rect x=\"480\" y=\"0\" width=\"1681\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip1000)\" d=\"\n",
       "M202.373 1425.62 L2352.76 1425.62 L2352.76 121.675 L202.373 121.675  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip1002\">\n",
       "    <rect x=\"202\" y=\"121\" width=\"2151\" height=\"1305\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  233.655,1425.62 233.655,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  668.617,1425.62 668.617,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1103.58,1425.62 1103.58,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1538.54,1425.62 1538.54,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1973.5,1425.62 1973.5,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,1388.71 2352.76,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,1026.91 2352.76,1026.91 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,665.106 2352.76,665.106 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,303.301 2352.76,303.301 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1425.62 2352.76,1425.62 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1425.62 202.373,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  233.655,1425.62 233.655,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  668.617,1425.62 668.617,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1103.58,1425.62 1103.58,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1538.54,1425.62 1538.54,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1973.5,1425.62 1973.5,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1388.71 228.178,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1026.91 228.178,1026.91 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,665.106 228.178,665.106 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1000)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,303.301 228.178,303.301 \n",
       "  \"/>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 233.655, 1479.62)\" x=\"233.655\" y=\"1479.62\">-4.25</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 668.617, 1479.62)\" x=\"668.617\" y=\"1479.62\">-4.00</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1103.58, 1479.62)\" x=\"1103.58\" y=\"1479.62\">-3.75</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1538.54, 1479.62)\" x=\"1538.54\" y=\"1479.62\">-3.50</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1973.5, 1479.62)\" x=\"1973.5\" y=\"1479.62\">-3.25</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 1406.21)\" x=\"178.373\" y=\"1406.21\">0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 1044.41)\" x=\"178.373\" y=\"1044.41\">10</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 682.606)\" x=\"178.373\" y=\"682.606\">20</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 320.801)\" x=\"178.373\" y=\"320.801\">30</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:84px; text-anchor:middle;\" transform=\"rotate(0, 1277.56, 73.2)\" x=\"1277.56\" y=\"73.2\">Log Maximum Constraint Violation</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(0, 1277.56, 1559.48)\" x=\"1277.56\" y=\"1559.48\">log( || Constraint Violation ||_inf)</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1000)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(-90, 89.2861, 773.647)\" x=\"89.2861\" y=\"773.647\">Occurences</text>\n",
       "</g>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M320.648 1352.53 L320.648 1388.71 L407.64 1388.71 L407.64 1352.53 L320.648 1352.53 L320.648 1352.53  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  320.648,1352.53 320.648,1388.71 407.64,1388.71 407.64,1352.53 320.648,1352.53 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M407.64 1352.53 L407.64 1388.71 L494.633 1388.71 L494.633 1352.53 L407.64 1352.53 L407.64 1352.53  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  407.64,1352.53 407.64,1388.71 494.633,1388.71 494.633,1352.53 407.64,1352.53 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M494.633 1388.71 L494.633 1388.71 L581.625 1388.71 L581.625 1388.71 L494.633 1388.71 L494.633 1388.71  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  494.633,1388.71 494.633,1388.71 581.625,1388.71 494.633,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M581.625 1388.71 L581.625 1388.71 L668.617 1388.71 L668.617 1388.71 L581.625 1388.71 L581.625 1388.71  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  581.625,1388.71 581.625,1388.71 668.617,1388.71 581.625,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M668.617 1352.53 L668.617 1388.71 L755.61 1388.71 L755.61 1352.53 L668.617 1352.53 L668.617 1352.53  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  668.617,1352.53 668.617,1388.71 755.61,1388.71 755.61,1352.53 668.617,1352.53 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M755.61 1316.35 L755.61 1388.71 L842.602 1388.71 L842.602 1316.35 L755.61 1316.35 L755.61 1316.35  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  755.61,1316.35 755.61,1388.71 842.602,1388.71 842.602,1316.35 755.61,1316.35 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M842.602 1388.71 L842.602 1388.71 L929.595 1388.71 L929.595 1388.71 L842.602 1388.71 L842.602 1388.71  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  842.602,1388.71 842.602,1388.71 929.595,1388.71 842.602,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M929.595 1243.99 L929.595 1388.71 L1016.59 1388.71 L1016.59 1243.99 L929.595 1243.99 L929.595 1243.99  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  929.595,1243.99 929.595,1388.71 1016.59,1388.71 1016.59,1243.99 929.595,1243.99 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1016.59 1352.53 L1016.59 1388.71 L1103.58 1388.71 L1103.58 1352.53 L1016.59 1352.53 L1016.59 1352.53  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1016.59,1352.53 1016.59,1388.71 1103.58,1388.71 1103.58,1352.53 1016.59,1352.53 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1103.58 1280.17 L1103.58 1388.71 L1190.57 1388.71 L1190.57 1280.17 L1103.58 1280.17 L1103.58 1280.17  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1103.58,1280.17 1103.58,1388.71 1190.57,1388.71 1190.57,1280.17 1103.58,1280.17 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1190.57 1171.63 L1190.57 1388.71 L1277.56 1388.71 L1277.56 1171.63 L1190.57 1171.63 L1190.57 1171.63  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1190.57,1171.63 1190.57,1388.71 1277.56,1388.71 1277.56,1171.63 1190.57,1171.63 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1277.56 954.549 L1277.56 1388.71 L1364.56 1388.71 L1364.56 954.549 L1277.56 954.549 L1277.56 954.549  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1277.56,954.549 1277.56,1388.71 1364.56,1388.71 1364.56,954.549 1277.56,954.549 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1364.56 990.73 L1364.56 1388.71 L1451.55 1388.71 L1451.55 990.73 L1364.56 990.73 L1364.56 990.73  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1364.56,990.73 1364.56,1388.71 1451.55,1388.71 1451.55,990.73 1364.56,990.73 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1451.55 773.647 L1451.55 1388.71 L1538.54 1388.71 L1538.54 773.647 L1451.55 773.647 L1451.55 773.647  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1451.55,773.647 1451.55,1388.71 1538.54,1388.71 1538.54,773.647 1451.55,773.647 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1538.54 701.286 L1538.54 1388.71 L1625.53 1388.71 L1625.53 701.286 L1538.54 701.286 L1538.54 701.286  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1538.54,701.286 1538.54,1388.71 1625.53,1388.71 1625.53,701.286 1538.54,701.286 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1625.53 158.579 L1625.53 1388.71 L1712.53 1388.71 L1712.53 158.579 L1625.53 158.579 L1625.53 158.579  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1625.53,158.579 1625.53,1388.71 1712.53,1388.71 1712.53,158.579 1625.53,158.579 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1712.53 267.121 L1712.53 1388.71 L1799.52 1388.71 L1799.52 267.121 L1712.53 267.121 L1712.53 267.121  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1712.53,267.121 1712.53,1388.71 1799.52,1388.71 1799.52,267.121 1712.53,267.121 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1799.52 665.106 L1799.52 1388.71 L1886.51 1388.71 L1886.51 665.106 L1799.52 665.106 L1799.52 665.106  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1799.52,665.106 1799.52,1388.71 1886.51,1388.71 1886.51,665.106 1799.52,665.106 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1886.51 846.008 L1886.51 1388.71 L1973.5 1388.71 L1973.5 846.008 L1886.51 846.008 L1886.51 846.008  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1886.51,846.008 1886.51,1388.71 1973.5,1388.71 1973.5,846.008 1886.51,846.008 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M1973.5 773.647 L1973.5 1388.71 L2060.5 1388.71 L2060.5 773.647 L1973.5 773.647 L1973.5 773.647  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1973.5,773.647 1973.5,1388.71 2060.5,1388.71 2060.5,773.647 1973.5,773.647 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M2060.5 1316.35 L2060.5 1388.71 L2147.49 1388.71 L2147.49 1316.35 L2060.5 1316.35 L2060.5 1316.35  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2060.5,1316.35 2060.5,1388.71 2147.49,1388.71 2147.49,1316.35 2060.5,1316.35 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1002)\" d=\"\n",
       "M2147.49 1280.17 L2147.49 1388.71 L2234.48 1388.71 L2234.48 1280.17 L2147.49 1280.17 L2147.49 1280.17  Z\n",
       "  \" fill=\"#ff0000\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1002)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2147.49,1280.17 2147.49,1388.71 2234.48,1388.71 2234.48,1280.17 2147.49,1280.17 \n",
       "  \"/>\n",
       "</svg>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n",
       "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"600\" height=\"400\" viewBox=\"0 0 2400 1600\">\n",
       "<defs>\n",
       "  <clipPath id=\"clip1400\">\n",
       "    <rect x=\"0\" y=\"0\" width=\"2400\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip1400)\" d=\"\n",
       "M0 1600 L2400 1600 L2400 0 L0 0  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip1401\">\n",
       "    <rect x=\"480\" y=\"0\" width=\"1681\" height=\"1600\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<path clip-path=\"url(#clip1400)\" d=\"\n",
       "M202.373 1425.62 L2352.76 1425.62 L2352.76 121.675 L202.373 121.675  Z\n",
       "  \" fill=\"#ffffff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<defs>\n",
       "  <clipPath id=\"clip1402\">\n",
       "    <rect x=\"202\" y=\"121\" width=\"2151\" height=\"1305\"/>\n",
       "  </clipPath>\n",
       "</defs>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  320.648,1425.62 320.648,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  675.061,1425.62 675.061,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1029.47,1425.62 1029.47,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1383.89,1425.62 1383.89,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  1738.3,1425.62 1738.3,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  2092.72,1425.62 2092.72,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,1388.71 2352.76,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,1047.01 2352.76,1047.01 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,705.306 2352.76,705.306 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:2; stroke-opacity:0.1; fill:none\" points=\"\n",
       "  202.373,363.602 2352.76,363.602 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1425.62 2352.76,1425.62 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1425.62 202.373,121.675 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  320.648,1425.62 320.648,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  675.061,1425.62 675.061,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1029.47,1425.62 1029.47,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1383.89,1425.62 1383.89,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1738.3,1425.62 1738.3,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2092.72,1425.62 2092.72,1409.97 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1388.71 228.178,1388.71 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,1047.01 228.178,1047.01 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,705.306 228.178,705.306 \n",
       "  \"/>\n",
       "<polyline clip-path=\"url(#clip1400)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  202.373,363.602 228.178,363.602 \n",
       "  \"/>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 320.648, 1479.62)\" x=\"320.648\" y=\"1479.62\">10</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 675.061, 1479.62)\" x=\"675.061\" y=\"1479.62\">20</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1029.47, 1479.62)\" x=\"1029.47\" y=\"1479.62\">30</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1383.89, 1479.62)\" x=\"1383.89\" y=\"1479.62\">40</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 1738.3, 1479.62)\" x=\"1738.3\" y=\"1479.62\">50</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:middle;\" transform=\"rotate(0, 2092.72, 1479.62)\" x=\"2092.72\" y=\"1479.62\">60</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 1406.21)\" x=\"178.373\" y=\"1406.21\">0</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 1064.51)\" x=\"178.373\" y=\"1064.51\">20</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 722.806)\" x=\"178.373\" y=\"722.806\">40</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:48px; text-anchor:end;\" transform=\"rotate(0, 178.373, 381.102)\" x=\"178.373\" y=\"381.102\">60</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:84px; text-anchor:middle;\" transform=\"rotate(0, 1277.56, 73.2)\" x=\"1277.56\" y=\"73.2\">Total Number of Iterations to Converge</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(0, 1277.56, 1559.48)\" x=\"1277.56\" y=\"1559.48\">Total Number of Iterations</text>\n",
       "</g>\n",
       "<g clip-path=\"url(#clip1400)\">\n",
       "<text style=\"fill:#000000; fill-opacity:1; font-family:Arial,Helvetica Neue,Helvetica,sans-serif; font-size:66px; text-anchor:middle;\" transform=\"rotate(-90, 89.2861, 773.647)\" x=\"89.2861\" y=\"773.647\">Occurences</text>\n",
       "</g>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M320.648 1115.35 L320.648 1388.71 L391.531 1388.71 L391.531 1115.35 L320.648 1115.35 L320.648 1115.35  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  320.648,1115.35 320.648,1388.71 391.531,1388.71 391.531,1115.35 320.648,1115.35 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M391.531 551.539 L391.531 1388.71 L462.413 1388.71 L462.413 551.539 L391.531 551.539 L391.531 551.539  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  391.531,551.539 391.531,1388.71 462.413,1388.71 462.413,551.539 391.531,551.539 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M462.413 158.579 L462.413 1388.71 L533.296 1388.71 L533.296 158.579 L462.413 158.579 L462.413 158.579  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  462.413,158.579 462.413,1388.71 533.296,1388.71 533.296,158.579 462.413,158.579 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M533.296 893.243 L533.296 1388.71 L604.179 1388.71 L604.179 893.243 L533.296 893.243 L533.296 893.243  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  533.296,893.243 533.296,1388.71 604.179,1388.71 604.179,893.243 533.296,893.243 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M604.179 1354.54 L604.179 1388.71 L675.061 1388.71 L675.061 1354.54 L604.179 1354.54 L604.179 1354.54  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  604.179,1354.54 604.179,1388.71 675.061,1388.71 675.061,1354.54 604.179,1354.54 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M675.061 1371.63 L675.061 1388.71 L745.944 1388.71 L745.944 1371.63 L675.061 1371.63 L675.061 1371.63  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  675.061,1371.63 675.061,1388.71 745.944,1388.71 745.944,1371.63 675.061,1371.63 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M745.944 1388.71 L745.944 1388.71 L816.827 1388.71 L816.827 1388.71 L745.944 1388.71 L745.944 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  745.944,1388.71 745.944,1388.71 816.827,1388.71 745.944,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M816.827 1371.63 L816.827 1388.71 L887.709 1388.71 L887.709 1371.63 L816.827 1371.63 L816.827 1371.63  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  816.827,1371.63 816.827,1388.71 887.709,1388.71 887.709,1371.63 816.827,1371.63 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M887.709 1337.46 L887.709 1388.71 L958.592 1388.71 L958.592 1337.46 L887.709 1337.46 L887.709 1337.46  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  887.709,1337.46 887.709,1388.71 958.592,1388.71 958.592,1337.46 887.709,1337.46 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M958.592 1354.54 L958.592 1388.71 L1029.47 1388.71 L1029.47 1354.54 L958.592 1354.54 L958.592 1354.54  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  958.592,1354.54 958.592,1388.71 1029.47,1388.71 1029.47,1354.54 958.592,1354.54 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1029.47 1303.29 L1029.47 1388.71 L1100.36 1388.71 L1100.36 1303.29 L1029.47 1303.29 L1029.47 1303.29  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1029.47,1303.29 1029.47,1388.71 1100.36,1388.71 1100.36,1303.29 1029.47,1303.29 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1100.36 1371.63 L1100.36 1388.71 L1171.24 1388.71 L1171.24 1371.63 L1100.36 1371.63 L1100.36 1371.63  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1100.36,1371.63 1100.36,1388.71 1171.24,1388.71 1171.24,1371.63 1100.36,1371.63 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1171.24 1303.29 L1171.24 1388.71 L1242.12 1388.71 L1242.12 1303.29 L1171.24 1303.29 L1171.24 1303.29  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1171.24,1303.29 1171.24,1388.71 1242.12,1388.71 1242.12,1303.29 1171.24,1303.29 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1242.12 1371.63 L1242.12 1388.71 L1313.01 1388.71 L1313.01 1371.63 L1242.12 1371.63 L1242.12 1371.63  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1242.12,1371.63 1242.12,1388.71 1313.01,1388.71 1313.01,1371.63 1242.12,1371.63 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1313.01 1388.71 L1313.01 1388.71 L1383.89 1388.71 L1383.89 1388.71 L1313.01 1388.71 L1313.01 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1313.01,1388.71 1313.01,1388.71 1383.89,1388.71 1313.01,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1383.89 1371.63 L1383.89 1388.71 L1454.77 1388.71 L1454.77 1371.63 L1383.89 1371.63 L1383.89 1371.63  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1383.89,1371.63 1383.89,1388.71 1454.77,1388.71 1454.77,1371.63 1383.89,1371.63 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1454.77 1337.46 L1454.77 1388.71 L1525.65 1388.71 L1525.65 1337.46 L1454.77 1337.46 L1454.77 1337.46  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1454.77,1337.46 1454.77,1388.71 1525.65,1388.71 1525.65,1337.46 1454.77,1337.46 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1525.65 1371.63 L1525.65 1388.71 L1596.54 1388.71 L1596.54 1371.63 L1525.65 1371.63 L1525.65 1371.63  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1525.65,1371.63 1525.65,1388.71 1596.54,1388.71 1596.54,1371.63 1525.65,1371.63 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1596.54 1337.46 L1596.54 1388.71 L1667.42 1388.71 L1667.42 1337.46 L1596.54 1337.46 L1596.54 1337.46  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1596.54,1337.46 1596.54,1388.71 1667.42,1388.71 1667.42,1337.46 1596.54,1337.46 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1667.42 1388.71 L1667.42 1388.71 L1738.3 1388.71 L1738.3 1388.71 L1667.42 1388.71 L1667.42 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1667.42,1388.71 1667.42,1388.71 1738.3,1388.71 1667.42,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1738.3 1388.71 L1738.3 1388.71 L1809.18 1388.71 L1809.18 1388.71 L1738.3 1388.71 L1738.3 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1738.3,1388.71 1738.3,1388.71 1809.18,1388.71 1738.3,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1809.18 1371.63 L1809.18 1388.71 L1880.07 1388.71 L1880.07 1371.63 L1809.18 1371.63 L1809.18 1371.63  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1809.18,1371.63 1809.18,1388.71 1880.07,1388.71 1880.07,1371.63 1809.18,1371.63 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1880.07 1354.54 L1880.07 1388.71 L1950.95 1388.71 L1950.95 1354.54 L1880.07 1354.54 L1880.07 1354.54  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1880.07,1354.54 1880.07,1388.71 1950.95,1388.71 1950.95,1354.54 1880.07,1354.54 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M1950.95 1388.71 L1950.95 1388.71 L2021.83 1388.71 L2021.83 1388.71 L1950.95 1388.71 L1950.95 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  1950.95,1388.71 1950.95,1388.71 2021.83,1388.71 1950.95,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M2021.83 1388.71 L2021.83 1388.71 L2092.72 1388.71 L2092.72 1388.71 L2021.83 1388.71 L2021.83 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2021.83,1388.71 2021.83,1388.71 2092.72,1388.71 2021.83,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M2092.72 1388.71 L2092.72 1388.71 L2163.6 1388.71 L2163.6 1388.71 L2092.72 1388.71 L2092.72 1388.71  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2092.72,1388.71 2092.72,1388.71 2163.6,1388.71 2092.72,1388.71 \n",
       "  \"/>\n",
       "<path clip-path=\"url(#clip1402)\" d=\"\n",
       "M2163.6 1354.54 L2163.6 1388.71 L2234.48 1388.71 L2234.48 1354.54 L2163.6 1354.54 L2163.6 1354.54  Z\n",
       "  \" fill=\"#0000ff\" fill-rule=\"evenodd\" fill-opacity=\"1\"/>\n",
       "<polyline clip-path=\"url(#clip1402)\" style=\"stroke:#000000; stroke-width:4; stroke-opacity:1; fill:none\" points=\"\n",
       "  2163.6,1354.54 2163.6,1388.71 2234.48,1388.71 2234.48,1354.54 2163.6,1354.54 \n",
       "  \"/>\n",
       "</svg>\n"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Time required to solve the problem\n",
    "visualize_solve_time(ilqgames_sampler; save=false)\n",
    "\n",
    "# Maximum constraint violation\n",
    "visualize_cmax(ilqgames_sampler; save=false)\n",
    "\n",
    "# Number of iterations (Newton step for ALGAMES, Riccati backwardpass for iLQGames)\n",
    "visualize_iterations_total(ilqgames_sampler; save=false)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Julia 1.3.1",
   "language": "julia",
   "name": "julia-1.3"
  },
  "language_info": {
   "file_extension": ".jl",
   "mimetype": "application/julia",
   "name": "julia",
   "version": "1.3.1"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
